package timing.ukulele.project.persistent;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import timing.ukulele.persistent.model.BaseIdWorkerModel;
import timing.ukulele.common.vo.ExecuteVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(description = "事项涉及的表单和流程内容")
@TableName("c_business_data")
public class BusinessData extends BaseIdWorkerModel {

    @TableField("business_id")
    @ApiModelProperty(value = "业务上下文主键")
    private Long businessId;

    @TableField("business_code")
    @ApiModelProperty(value = "业务唯一码")
    private String businessCode;

    @TableField("template_id")
    @ApiModelProperty("表单模板ID")
    private Long templateId;

    @TableField("content")
    @ApiModelProperty("表单填写的内容")
    private String content;

    @TableField("system_id")
    @ApiModelProperty("所属系统")
    private Long systemId;

    @TableField("flow_instance")
    @ApiModelProperty("流程实例")
    private String flowInstance;

    @TableField("flow_task")
    @ApiModelProperty("流程实例节点")
    private String flowTask;

    @TableField("approver")
    @ApiModelProperty("审批人")
    private String approver;

    @TableField(exist = false)
    @ApiModelProperty("申请人")
    private String starter;

    @TableField(exist = false)
    @ApiModelProperty("执行任务流程接口所需要的参数")
    private ExecuteVO executeVO;

}
